package com.yigang.dao;

import java.util.List;
import java.util.Map;

import com.yigang.entity.ProductVO;
import org.apache.ibatis.annotations.Param;

import com.yigang.entity.ImgAndProduct;
import com.yigang.entity.OrderAndProduct;
import com.yigang.entity.Product;

/**
 * @author 陈佳祥
 * 商品管理
 */
public interface ProductMapper {

    /**
     * 按id获取
     *
     * @param id id
     * @return 实体
     */
    Product getById(@Param("id") Integer id);
    ProductVO getColorById(@Param("id") Integer id);

    Product selectProductById(int productId);//根据id查询  用于查询总条数

    List<Product> selectProductList(Product record);//查询所有

    //根据id修改上下架状态
    void updateProductStatusById(@Param("productId") int productId, @Param("productRecommend") int productRecommend);

    //根据id修改是否推荐状态״̬
    void updateProductShelfById(@Param("productId") int productId, @Param("productShelf") int productShelf);

    //删除
    int deleteByPrimaryKey(Integer productId);

    //添加
    int insertSelective(Product record);

    //修改
    int updateByPrimaryKeySelective(Product record);

    //获取所有商品  前端   存放到数组中
    public List<Map<String, Object>> getAllproduct(@Param("searchKey") String searchKey,@Param("classification_id") Integer classification_id);
    Product getAllproductById(@Param("classification_id") Integer classification_id);

    //根据id查询
    public List<Map<String, Object>> getProductList(@Param("product_id") int product_id);

    public List<Map<String, Object>> productRecommend();//买手热销

    public List<Map<String, Object>> productRecommend1();//相关推荐

    public List<Map<String, Object>> productRecommend2();//猜你喜欢

    public List<Map<String, Object>> getAllpage();//获取所有的宝宝

    public List<Map<String, Object>> getAllChanel();//香奈儿
    
    List<Product> getProductIdByClassificationId(int classificationId);//根据类别id查询产品id
    
    List<ImgAndProduct> selectImgAndProduct (ImgAndProduct imgAndProduct);//获取商品和图片

}